06_SPR/05 -- Cierre del capítulo.md

Cierre del capítulo

El capítulo BDV cerró con DWall capaz de buscar por significado sobre sus propios recursos. SPR ha extendido esa capacidad al mundo de los documentos del cliente: PDFs, DOCX, imágenes y texto plano que ahora viven dentro de la plataforma como recursos de primera clase y, opcionalmente, como índices semánticos consultables por el agente RAG.

La arquitectura ha cumplido el objetivo de mantenerse alineada con el resto del backend. dwall-module-files se ha sumado a la familia de módulos de recursos sin pedir excepciones al diseño hexagonal, y dwall-module-embeddings-files se ha quedado fuera de su camino crítico: una marca que no quiera embeddings sobre archivos puede arrancar la plataforma sin él, y una que sí los quiera los activa simplemente teniendo el módulo en el classpath. Los dos puertos en files-domain/apiFileStoragePort y FileEmbeddingPort— son los que sostienen esa opcionalidad sin acoplar bounded contexts.

El patrón choreography ha sido la herramienta natural para mantener consistente el estado de subida sin centralizar la coordinación. Cada módulo escucha lo que le importa y reacciona; nadie escribe en la tabla del otro. La tabla mirror del módulo de embeddings es la consecuencia técnica de esa decisión: aísla el ciclo de vida del procesado del ciclo de vida del archivo, y deja que ambos evolucionen sin que un fallo en uno contamine al otro.

Lo que esta infraestructura entrega al siguiente capítulo es una pieza concreta: un endpoint /api/web/embeddings/files/search que el agente puede consumir para enganchar pasajes relevantes de documentos del cliente al contexto de cada respuesta. AOR entra en cómo ese agente compone la pregunta, decide qué fuentes consultar y combina los resultados en una respuesta coherente.